{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "from pyspark.sql import SparkSession\n",
    "spark = SparkSession.builder.appName('clustering').getOrCreate()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "import pyspark\n",
    "import pandas as pd\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "from pyspark.sql.functions import * \n",
    "from pyspark.sql.types import *\n",
    "from pyspark.sql.functions import rand, randn\n",
    "from pyspark.ml.clustering import KMeans\n",
    "from pyspark.sql.functions import sha2\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 273,
   "metadata": {},
   "outputs": [],
   "source": [
    "#read the dataset\n",
    "df=spark.read.csv('music_data.csv',inferSchema=True,header=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 274,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "429023"
      ]
     },
     "execution_count": 274,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.count()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 275,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "root\n",
      " |-- user_id: string (nullable = true)\n",
      " |-- music category: string (nullable = true)\n",
      "\n"
     ]
    }
   ],
   "source": [
    "df.printSchema()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 276,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "+-----------------+-----+\n",
      "|music category   |count|\n",
      "+-----------------+-----+\n",
      "|Alternative Music|64227|\n",
      "|Blues            |54647|\n",
      "|Classical Music  |43117|\n",
      "|Country Music    |39891|\n",
      "|Dance Music      |35779|\n",
      "|Easy Listening   |34356|\n",
      "|Electronic Music |30985|\n",
      "|Rap              |29569|\n",
      "|Hip Hop          |16895|\n",
      "|Indie Pop        |16244|\n",
      "|Motivational     |10118|\n",
      "|Asian Pop        |8444 |\n",
      "|Jazz             |7685 |\n",
      "|Latin Music      |7302 |\n",
      "|New Age          |7053 |\n",
      "|Opera            |6188 |\n",
      "|Hindi Music      |5689 |\n",
      "|Popular          |4729 |\n",
      "|Soulful          |2403 |\n",
      "|Reggae           |1970 |\n",
      "|Rock             |1732 |\n",
      "+-----------------+-----+\n",
      "\n"
     ]
    }
   ],
   "source": [
    "df.groupBy('music category').count().orderBy('count',ascending=False).show(100,False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 277,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "775"
      ]
     },
     "execution_count": 277,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.select('user_id').distinct().count()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 278,
   "metadata": {},
   "outputs": [],
   "source": [
    "#creating new df with single record for each user\n",
    "feature_df=df.stat.crosstab(\"user_id\", \"music category\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 279,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "root\n",
      " |-- user_id_music category: string (nullable = true)\n",
      " |-- Alternative Music: long (nullable = true)\n",
      " |-- Asian Pop: long (nullable = true)\n",
      " |-- Blues: long (nullable = true)\n",
      " |-- Classical Music: long (nullable = true)\n",
      " |-- Country Music: long (nullable = true)\n",
      " |-- Dance Music: long (nullable = true)\n",
      " |-- Easy Listening: long (nullable = true)\n",
      " |-- Electronic Music: long (nullable = true)\n",
      " |-- Hindi Music: long (nullable = true)\n",
      " |-- Hip Hop: long (nullable = true)\n",
      " |-- Indie Pop: long (nullable = true)\n",
      " |-- Jazz: long (nullable = true)\n",
      " |-- Latin Music: long (nullable = true)\n",
      " |-- Motivational: long (nullable = true)\n",
      " |-- New Age: long (nullable = true)\n",
      " |-- Opera: long (nullable = true)\n",
      " |-- Popular: long (nullable = true)\n",
      " |-- Rap: long (nullable = true)\n",
      " |-- Reggae: long (nullable = true)\n",
      " |-- Rock: long (nullable = true)\n",
      " |-- Soulful: long (nullable = true)\n",
      "\n"
     ]
    }
   ],
   "source": [
    "feature_df.printSchema()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 281,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "+----------------------------------------------------------------+-----------------+---------+-----+---------------+-------------+-----------+--------------+----------------+-----------+-------+---------+----+-----------+------------+-------+-----+-------+---+------+----+-------+\n",
      "|user_id_music category                                          |Alternative Music|Asian Pop|Blues|Classical Music|Country Music|Dance Music|Easy Listening|Electronic Music|Hindi Music|Hip Hop|Indie Pop|Jazz|Latin Music|Motivational|New Age|Opera|Popular|Rap|Reggae|Rock|Soulful|\n",
      "+----------------------------------------------------------------+-----------------+---------+-----+---------------+-------------+-----------+--------------+----------------+-----------+-------+---------+----+-----------+------------+-------+-----+-------+---+------+----+-------+\n",
      "|ca3c4285512798abe7d81fa2d0588549211be9516d9b2050e5564f8e912312c7|65               |0        |7    |8              |7            |12         |7             |2               |12         |7      |0        |15  |0          |2           |0      |3    |0      |3  |0     |1   |0      |\n",
      "|b457919ae168ac12ec7e0303ae0d5fe292b63c9d04eb54e039942e7f46552ec4|80               |0        |65   |135            |16           |55         |7             |34              |0          |12     |6        |7   |3          |2           |1      |2    |0      |5  |0     |0   |0      |\n",
      "|a87bb168ba6e5a8da5eccce18c95565d843b40c1833b0f6c3089eb083f0fe3d3|0                |0        |11   |0              |9            |3          |0             |3               |3          |0      |5        |0   |0          |1           |0      |0    |4      |0  |0     |0   |5      |\n",
      "+----------------------------------------------------------------+-----------------+---------+-----+---------------+-------------+-----------+--------------+----------------+-----------+-------+---------+----+-----------+------------+-------+-----+-------+---+------+----+-------+\n",
      "only showing top 3 rows\n",
      "\n"
     ]
    }
   ],
   "source": [
    "feature_df.show(3,False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 282,
   "metadata": {},
   "outputs": [],
   "source": [
    "from pyspark.ml.linalg import Vectors\n",
    "from pyspark.ml.feature import VectorAssembler"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 284,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "['user_id_music category', 'Alternative Music', 'Asian Pop', 'Blues', 'Classical Music', 'Country Music', 'Dance Music', 'Easy Listening', 'Electronic Music', 'Hindi Music', 'Hip Hop', 'Indie Pop', 'Jazz', 'Latin Music', 'Motivational', 'New Age', 'Opera', 'Popular', 'Rap', 'Reggae', 'Rock', 'Soulful']\n"
     ]
    }
   ],
   "source": [
    "print(feature_df.columns)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 240,
   "metadata": {},
   "outputs": [],
   "source": [
    "feat_cols=[col for col in feature_df.columns if col != 'user_id_music category']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 285,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "['Alternative Music', 'Asian Pop', 'Blues', 'Classical Music', 'Country Music', 'Dance Music', 'Easy Listening', 'Electronic Music', 'Hindi Music', 'Hip Hop', 'Indie Pop', 'Jazz', 'Latin Music', 'Motivational', 'New Age', 'Opera', 'Popular', 'Rap', 'Reggae', 'Rock', 'Soulful']\n"
     ]
    }
   ],
   "source": [
    "print(feat_cols)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 242,
   "metadata": {},
   "outputs": [],
   "source": [
    "vec_assembler = VectorAssembler(inputCols = feat_cols, outputCol='features')\n",
    "final_data = vec_assembler.transform(feature_df)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 286,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "root\n",
      " |-- user_id_music category: string (nullable = true)\n",
      " |-- Alternative Music: long (nullable = true)\n",
      " |-- Asian Pop: long (nullable = true)\n",
      " |-- Blues: long (nullable = true)\n",
      " |-- Classical Music: long (nullable = true)\n",
      " |-- Country Music: long (nullable = true)\n",
      " |-- Dance Music: long (nullable = true)\n",
      " |-- Easy Listening: long (nullable = true)\n",
      " |-- Electronic Music: long (nullable = true)\n",
      " |-- Hindi Music: long (nullable = true)\n",
      " |-- Hip Hop: long (nullable = true)\n",
      " |-- Indie Pop: long (nullable = true)\n",
      " |-- Jazz: long (nullable = true)\n",
      " |-- Latin Music: long (nullable = true)\n",
      " |-- Motivational: long (nullable = true)\n",
      " |-- New Age: long (nullable = true)\n",
      " |-- Opera: long (nullable = true)\n",
      " |-- Popular: long (nullable = true)\n",
      " |-- Rap: long (nullable = true)\n",
      " |-- Reggae: long (nullable = true)\n",
      " |-- Rock: long (nullable = true)\n",
      " |-- Soulful: long (nullable = true)\n",
      " |-- features: vector (nullable = true)\n",
      "\n",
      "None\n"
     ]
    }
   ],
   "source": [
    "print(final_data.printSchema())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 244,
   "metadata": {},
   "outputs": [],
   "source": [
    "from pyspark.ml.feature import StandardScaler"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 287,
   "metadata": {},
   "outputs": [],
   "source": [
    "#scaling the features\n",
    "scaler = StandardScaler(inputCol=\"features\", outputCol=\"scaledFeatures\", withStd=True, withMean=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 288,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Compute summary statistics by fitting the StandardScaler\n",
    "scalerModel = scaler.fit(final_data)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 289,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Normalize each feature to have unit standard deviation.\n",
    "cluster_final_data = scalerModel.transform(final_data)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 290,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['user_id_music category',\n",
       " 'Alternative Music',\n",
       " 'Asian Pop',\n",
       " 'Blues',\n",
       " 'Classical Music',\n",
       " 'Country Music',\n",
       " 'Dance Music',\n",
       " 'Easy Listening',\n",
       " 'Electronic Music',\n",
       " 'Hindi Music',\n",
       " 'Hip Hop',\n",
       " 'Indie Pop',\n",
       " 'Jazz',\n",
       " 'Latin Music',\n",
       " 'Motivational',\n",
       " 'New Age',\n",
       " 'Opera',\n",
       " 'Popular',\n",
       " 'Rap',\n",
       " 'Reggae',\n",
       " 'Rock',\n",
       " 'Soulful',\n",
       " 'features',\n",
       " 'scaledFeatures']"
      ]
     },
     "execution_count": 290,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "cluster_final_data.columns"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 291,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "With K=2\n",
      "Within Set Sum of Squared Errors = 13324.475648979027\n",
      "------------------------------------------------------------\n",
      "With K=3\n",
      "Within Set Sum of Squared Errors = 12699.899722749344\n",
      "------------------------------------------------------------\n",
      "With K=4\n",
      "Within Set Sum of Squared Errors = 11263.261281238181\n",
      "------------------------------------------------------------\n",
      "With K=5\n",
      "Within Set Sum of Squared Errors = 11608.125811487394\n",
      "------------------------------------------------------------\n",
      "With K=6\n",
      "Within Set Sum of Squared Errors = 10479.14665326082\n",
      "------------------------------------------------------------\n",
      "With K=7\n",
      "Within Set Sum of Squared Errors = 10377.739238575698\n",
      "------------------------------------------------------------\n",
      "With K=8\n",
      "Within Set Sum of Squared Errors = 8884.406507460375\n",
      "------------------------------------------------------------\n",
      "With K=9\n",
      "Within Set Sum of Squared Errors = 8743.346814279732\n",
      "------------------------------------------------------------\n"
     ]
    }
   ],
   "source": [
    "errors=[]\n",
    "\n",
    "for k in range(2,10):\n",
    "    kmeans = KMeans(featuresCol='scaledFeatures',k=k)\n",
    "    model = kmeans.fit(cluster_final_data)\n",
    "    wssse = model.computeCost(cluster_final_data)\n",
    "    errors.append(wssse)\n",
    "    print(\"With K={}\".format(k))\n",
    "    print(\"Within Set Sum of Squared Errors = \" + str(wssse))\n",
    "    print('--'*30)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 292,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZUAAAEKCAYAAADaa8itAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAF6JJREFUeJzt3X+w3XV95/HnyxD1itqLEB0SoOBuJitSNXgH2TLDWtwlgaUSWd3VGQuDzrK1uPXHNiups2Wr64iTbtulrXZYYcGuQinGmGnVawasbi0oNwYNiFmy/oDcoMQJQS13aojv/eN8Lx7ivffcG773nvvj+Zg5c895n+/3nPc3k5tXvp/P53xPqgpJktrwjH43IElaPAwVSVJrDBVJUmsMFUlSawwVSVJrDBVJUmsMFUlSawwVSVJrDBVJUmuO6XcDc+2EE06oU089td9tSNKCsmPHjh9W1Ype2y25UDn11FMZGRnpdxuStKAk+d50tnP4S5LUGkNFktQaQ0WS1BpDRZLUGkNFktSaJbf662hs3TnK5uHd7Ds4xsrBATauW8OGtav63ZYkzTuGSg9bd46yacsuxg4dBmD04BibtuwCMFgk6QgOf/WweXj3k4EybuzQYTYP7+5TR5I0fxkqPew7ODajuiQtZYZKDysHB2ZUl6SlzFDpYeO6NQwsX/aU2sDyZWxct6ZPHUnS/OVEfQ/jk/Gu/pKk3gyVadiwdpUhIknT4PCXJKk1hookqTWGiiSpNYaKJKk1hookqTWGiiSpNbMWKkluSPJIknu7au9P8o0k9yT5fJKVTT1Jrk2yp3n+zK59LkvyQHO7rKv+yiS7mn2uTZLZOhZJ0vTM5pnKjcD6I2qbq+plVfUK4K+B32vqFwCrm9sVwEcAkrwAuBp4FXAWcHWS45p9PtJsO77fke8lSZpjsxYqVfUl4MARtR91PTwWqOb+xcDHquMuYDDJicA6YHtVHaiqR4HtwPrmuedX1Z1VVcDHgA2zdSySpOmZ80/UJ/kAcCnwGPBrTXkV8FDXZnub2lT1vRPUJ3vPK+ic1XDKKac8vQOQJE1qzifqq+q9VXUy8HHg7U15ovmQOor6ZO95XVUNVdXQihUrZtqyJGma+rn66xPAv2nu7wVO7nruJGBfj/pJE9QlSX00p6GSZHXXw9cC32rubwMubVaBnQ08VlUPA8PA+UmOaybozweGm+d+nOTsZtXXpcCn5+5IJEkTmbU5lSQ3A68GTkiyl84qrguTrAF+BnwP+M1m888AFwJ7gMeBywGq6kCS9wN3N9u9r6rGJ//fRmeF2QDw2eYmSeqjdBZPLR1DQ0M1MjLS7zYkaUFJsqOqhnpt5yfqJUmtMVQkSa0xVCRJrTFUJEmt8TvqF6GtO0fZPLybfQfHWDk4wMZ1a9iwdtILDkhSawyVRWbrzlE2bdnF2KHDAIweHGPTll0ABoukWefw1yKzeXj3k4EybuzQYTYP7+5TR5KWEkNlkdl3cGxGdUlqk6GyyKwcHJhRXZLaZKgsMhvXrWFg+bKn1AaWL2PjujV96kjSUuJE/SIzPhnv6i9J/WCoLEIb1q4yRCT1hcNfkqTWGCqSpNYYKpKk1hgqkqTWGCqSpNYYKpKk1hgqkqTWGCqSpNYYKpKk1hgqkqTWGCqSpNYYKpKk1hgqkqTWGCqSpNYYKpKk1hgqkqTWGCqSpNYYKpKk1hgqkqTWGCqSpNYYKpKk1hgqkqTWzFqoJLkhySNJ7u2qbU7yrSTfSPKpJINdz21KsifJ7iTruurrm9qeJFd11U9L8pUkDyT5yyTPnK1jkSRNz2yeqdwIrD+ith04o6peBvxfYBNAktOBNwIvbfb5cJJlSZYBfwZcAJwOvKnZFuBDwB9V1WrgUeCts3gskqRpmLVQqaovAQeOqH2+qp5oHt4FnNTcvxi4par+saq+A+wBzmpue6rq21X1U+AW4OIkAc4Dbmv2vwnYMFvHIkmann7OqbwF+GxzfxXwUNdze5vaZPXjgYNdATVen1CSK5KMJBnZv39/S+1Lko7Ul1BJ8l7gCeDj46UJNqujqE+oqq6rqqGqGlqxYsVM25UkTdMxc/2GSS4DLgJeU1XjQbAXOLlrs5OAfc39ieo/BAaTHNOcrXRvL0nqkzk9U0myHngP8NqqerzrqW3AG5M8K8lpwGrgq8DdwOpmpdcz6Uzmb2vC6AvA65v9LwM+PVfHIUma2GwuKb4ZuBNYk2RvkrcCfwo8D9ie5J4kfw5QVfcBtwLfBD4HXFlVh5uzkLcDw8D9wK3NttAJp3cn2UNnjuX62ToWSdL05OcjUEvD0NBQjYyM9LsNSVpQkuyoqqFe2/mJeklSawwVSVJrDBVJUmsMFUlSawwVSVJrDBVJUmsMFUlSawwVSVJr5vzaX9JCtXXnKJuHd7Pv4BgrBwfYuG4NG9ZOenFsaUkyVKRp2LpzlE1bdjF26DAAowfH2LRlF4DBInVx+Euahs3Du58MlHFjhw6zeXh3nzqS5idDRZqGfQfHZlSXlipDRZqGlYMDM6pLS5WhIk3DxnVrGFi+7Cm1geXL2LhuTZ86kuYnJ+qlaRifjHf1lzQ1Q0Wapg1rVxkiUg8Of0mSWmOoSJJaY6hIklpjqEiSWmOoSJJaY6hIklpjqEiSWuPnVNRXXk5eWlyOOlSSHFNVT7TZjJYWLycvLT5TDn8l+buu+39xxNNfnZWOtGR4OXlp8ek1p3Js1/2XHvFcWu5FS4yXk5cWn16hUkf5nNSTl5OXFp9ecyqDSV5HJ3wGk1zS1AP80qx2pkVv47o1T5lTAS8nLy10vULli8Bru+7/etdzX5qVjrRkeDl5afGZMlSq6vK5akRLk5eTlxaXXqu/fj3JL3c9/r0kX0+yLclps9+eJGkh6TVR/wFgP0CSi4A3A28BtgF/PrutSZIWmp6rv6rq8eb+JcD1VbWjqj4KrJjd1iRJC02vUEmS5yZ5BvAa4Pau557dY8cbkjyS5N6u2huS3JfkZ0mGjth+U5I9SXYnWddVX9/U9iS5qqt+WpKvJHkgyV8meeZ0DliSNHt6hcofA/cAI8D9VTUCkGQt8HCPfW8E1h9Ru5fOGc9TVo4lOR14I50PWK4HPpxkWZJlwJ8BFwCnA29qtgX4EPBHVbUaeBR4a49+JEmzbMpQqaobgH9B5x/sC7ueehiYcmVYVX0JOHBE7f6qmugaHBcDt1TVP1bVd4A9wFnNbU9VfbuqfgrcAlycJMB5wG3N/jcBG6bqR5I0+6ZcUtys/DpYVaPN41+j84/394A/bbGPVcBdXY/3NjWAh46ovwo4vunriQm2lyT1Sa/hr1tprv+V5BXAXwEPAi8HPtxiHxNdR6yOoj7xiydXJBlJMrJ///6jbFGS1EuvT9QPVNW+5v6bgRuq6r83E/f3tNjHXuDkrscnAePvO1H9h3QuGzN++f3u7X9BVV0HXAcwNDTkNcskaZb0XP3Vdf88mtVfVfWzlvvYBrwxybOaD1WupnNp/buB1c1Kr2fSmczfVlUFfAF4fbP/ZcCnW+5JkjRDvc5U7khyK/B94DjgDoAkJwI/nWrHJDcDrwZOSLIXuJrOxP2f0PmMy98kuaeq1lXVfc37fBN4Ariyqg43r/N2YBhYRudM6b7mLd4D3JLkvwE7getndOSSpNal85/+SZ5M3gU8FxgDPjE+FNYsKX5hVQ3PSZctGhoaqpGRkX63IUkLSpIdVTXUa7teZyqrgF8FXgJclOTvgS8Dd1bVzqffpiRpMel1leLfAWjmM4boBMxbgP+Z5GBVnT7V/pKkpaXXmcq4AeD5dL6Y65forLTaNVtNSZIWpl4ffryOzqVTfgx8Bfh74A+r6tE56E2StMD0WlJ8CvAsOqu/Rul8nuTgbDclSVqYes2prG+us/VSOvMp/wk4I8kBOpP1V89Bj5KkBaLnnErzQcN7kxwEHmtuF9G52KOhIkl6Uq85ld+mc4ZyDnCIZjkxcANO1EuSjtDrTOVUOpeXf1dV9fr+FEnSEtdrTuXdc9WIJGnh67X6S5KkaTNUJEmtMVQkSa0xVCRJrZnutb8kLTBbd46yeXg3+w6OsXJwgI3r1rBh7ap+t6VFzlCRFqGtO0fZtGUXY4cOAzB6cIxNWzofLTNYNJsc/pIWoc3Du58MlHFjhw6zeXh3nzrSUmGoSIvQvoNjM6pLbXH4S1qEVg4OMDpBgKwcHOhDN705/7N4eKYiLUIb161hYPmyp9QGli9j47o1fepocuPzP6MHxyh+Pv+zdedov1vTUTBUpEVow9pVfPCSX2HV4AABVg0O8MFLfmVe/u/f+Z/FxeEvaZHasHbVvAyRIzn/s7h4piKpryab55mv8z+amqEiqa8W0vyPenP4S1JfjQ/RufprcTBUJPXdQpn/UW8Of0mSWmOoSJJaY6hIklpjqEiSWmOoSJJaY6hIklpjqEiSWmOoSJJaM2uhkuSGJI8kuber9oIk25M80Pw8rqknybVJ9iT5RpIzu/a5rNn+gSSXddVfmWRXs8+1STJbxyJJmp7ZPFO5EVh/RO0q4PaqWg3c3jwGuABY3dyuAD4CnRACrgZeBZwFXD0eRM02V3Ttd+R7SZLm2KyFSlV9CThwRPli4Kbm/k3Ahq76x6rjLmAwyYnAOmB7VR2oqkeB7cD65rnnV9WdVVXAx7peS5LUJ3M9p/KiqnoYoPn5wqa+Cnioa7u9TW2q+t4J6pKkPpovE/UTzYfUUdQnfvHkiiQjSUb2799/lC1KknqZ61D5QTN0RfPzkaa+Fzi5a7uTgH096idNUJ9QVV1XVUNVNbRixYqnfRCSpInNdahsA8ZXcF0GfLqrfmmzCuxs4LFmeGwYOD/Jcc0E/fnAcPPcj5Oc3az6urTrtSRJfTJr36eS5Gbg1cAJSfbSWcV1DXBrkrcCDwJvaDb/DHAhsAd4HLgcoKoOJHk/cHez3fuqanzy/210VpgNAJ9tbpKkPkpn8dTSMTQ0VCMjI/1uQ5IWlCQ7qmqo13bzZaJekrQIGCqSpNYYKpKk1hgqkqTWGCqSpNYYKpKk1hgqkqTWGCqSpNYYKpKk1hgqkqTWGCqSpNYYKpKk1hgqkqTWGCqSpNYYKpKk1hgqkqTWGCqSpNYYKpKk1hgqkqTWGCqSpNYYKpKk1hgqkqTWGCqSpNYYKpKk1hgqkqTWGCqSpNYYKpKk1hgqkqTWGCqSpNYYKpKk1hgqkqTWGCqSpNYYKpKk1hgqkqTW9CVUkrwjyb1J7kvyzqb2giTbkzzQ/DyuqSfJtUn2JPlGkjO7XueyZvsHklzWj2ORJP3cnIdKkjOAfw+cBbwcuCjJauAq4PaqWg3c3jwGuABY3dyuAD7SvM4LgKuBVzWvdfV4EEmS+qMfZyovAe6qqser6gngi8DrgIuBm5ptbgI2NPcvBj5WHXcBg0lOBNYB26vqQFU9CmwH1s/lgUiSnqofoXIvcG6S45M8B7gQOBl4UVU9DND8fGGz/Srgoa799za1yeqSpD45Zq7fsKruT/IhOmcWPwG+DjwxxS6Z6GWmqP/iCyRX0Bk645RTTplRv5Kk6evLRH1VXV9VZ1bVucAB4AHgB82wFs3PR5rN99I5kxl3ErBvivpE73ddVQ1V1dCKFSvaPRhJ0pP6tfrrhc3PU4BLgJuBbcD4Cq7LgE8397cBlzarwM4GHmuGx4aB85Mc10zQn9/UJGlWbd05yjnX3MFpV/0N51xzB1t3jva7pXljzoe/Gp9McjxwCLiyqh5Ncg1wa5K3Ag8Cb2i2/QydeZc9wOPA5QBVdSDJ+4G7m+3eV1UH5vIgJC09W3eOsmnLLsYOHQZg9OAYm7bsAmDDWqd1UzXhNMSiNTQ0VCMjI/1uQ9ICdc41dzB6cOwX6qsGB/jyVef1oaO5kWRHVQ312s5P1EvSDOybIFCmqi81hookzcDKwYEZ1ZcaQ0WSZmDjujUMLF/2lNrA8mVsXLemTx3NL/2aqJekBWl8Mn7z8G72HRxj5eAAG9etmbeT9Ft3js5pr4aKJM3QhrWr5m2IdOvHSjWHvyRpkdo8vPvJQBk3dugwm4d3z9p7GiqStEj1Y6WaoSJJi1Q/VqoZKpK0SPVjpZoT9ZK0SPVjpZqhIkmL2FyvVHP4S5LUGkNFktQaQ0WS1BpDRZLUGkNFktSaJfclXUn2A987yt1PAH7YYjuzbSH1a6+zZyH1u5B6hYXV79Pt9ZerakWvjZZcqDwdSUam881n88VC6tdeZ89C6nch9QoLq9+56tXhL0lSawwVSVJrDJWZua7fDczQQurXXmfPQup3IfUKC6vfOenVORVJUms8U5EktcZQmYYkJyf5QpL7k9yX5B397mkySZ6d5KtJvt70+vv97qmXJMuS7Ezy1/3upZck302yK8k9SUb63c9UkgwmuS3Jt5q/u/+83z1NJsma5s90/PajJO/sd1+TSfKu5vfr3iQ3J3l2v3uaTJJ3NH3eNxd/pg5/TUOSE4ETq+prSZ4H7AA2VNU3+9zaL0gS4Niq+kmS5cDfAe+oqrv63NqkkrwbGAKeX1UX9bufqST5LjBUVfP+swlJbgL+T1V9NMkzgedU1cF+99VLkmXAKPCqqjraz5TNmiSr6PxenV5VY0luBT5TVTf2t7NflOQM4BbgLOCnwOeAt1XVA7P1np6pTENVPVxVX2vu/xi4H5i7a0nPQHX8pHm4vLnN2/85JDkJ+NfAR/vdy2KS5PnAucD1AFX104UQKI3XAP9vPgZKl2OAgSTHAM8B9vW5n8m8BLirqh6vqieALwKvm803NFRmKMmpwFrgK/3tZHLNcNI9wCPA9qqat70Cfwz8Z+Bn/W5kmgr4fJIdSa7odzNTeDGwH/hfzdDiR5Mc2++mpumNwM39bmIyVTUK/AHwIPAw8FhVfb6/XU3qXuDcJMcneQ5wIXDybL6hoTIDSZ4LfBJ4Z1X9qN/9TKaqDlfVK4CTgLOaU+B5J8lFwCNVtaPfvczAOVV1JnABcGWSc/vd0CSOAc4EPlJVa4F/AK7qb0u9NcN0rwX+qt+9TCbJccDFwGnASuDYJG/ub1cTq6r7gQ8B2+kMfX0deGI239NQmaZmfuKTwMeraku/+5mOZrjjb4H1fW5lMucAr23mKW4Bzkvyv/vb0tSqal/z8xHgU3TGquejvcDerrPU2+iEzHx3AfC1qvpBvxuZwr8EvlNV+6vqELAF+NU+9zSpqrq+qs6sqnOBA8CszaeAoTItzeT39cD9VfWH/e5nKklWJBls7g/Q+QX4Vn+7mlhVbaqqk6rqVDpDHndU1bz8Hx9AkmObhRo0Q0nn0xlemHeq6vvAQ0nWNKXXAPNuYckE3sQ8HvpqPAicneQ5zb8Nr6EzzzovJXlh8/MU4BJm+c/X76ifnnOA3wB2NXMVAL9bVZ/pY0+TORG4qVlB8wzg1qqa90t1F4gXAZ/q/DvCMcAnqupz/W1pSv8R+HgzpPRt4PI+9zOlZsz/XwH/od+9TKWqvpLkNuBrdIaSdjK/P1n/ySTHA4eAK6vq0dl8M5cUS5Ja4/CXJKk1hookqTWGiiSpNYaKJKk1hookqTWGitSyJP81ye8cxX6DSX5rNnqS5oqhIs0fg8CMQiUd/h5r3vAvo/Q0Jbk0yTea77D5iyOe+9skQ839E5pL0pDkpc333tzT7LsauAb4J01tc7PdxiR3N9v8flM7tfl+lA/T+QDeyUlubL4zY1eSd83h4UtP4SfqpachyUuB99K50OQPk7wA+O1p7PqbwP+oqvFPvC+jc8HHM5qLgZLkfGA1neuLBdjWXMDyQWANcHlV/VaSVwKrquqMZr/Bdo9Smj7PVKSn5zzgtvEv7aqqA9Pc707gd5O8B/jlqhqbYJvzm9tOOmck/4xOyAB8r+uL174NvDjJnyRZD8zbK2hr8TNUpKcnTP0laE/w89+zJ79ytqo+QecS72PAcJLzJnntD1bVK5rbP62q65vn/qHrtR4FXk7nitRX4heeqY8MFenpuR34t80F+2iGv7p9F3hlc//148UkLwa+XVXXAtuAlwE/Bp7Xte8w8Jbme3xIsmr8irPdkpwAPKOqPgn8FxbGJe61SDmnIj0NVXVfkg8AX0xymM5Q1Xe7NvkD4NYkvwHc0VX/d8CbkxwCvg+8r6oOJPlyknuBz1bVxiQvAe5sroz8E+DNwOEj2lhF5xsex/+TuKndo5Smz6sUS5Ja4/CXJKk1hookqTWGiiSpNYaKJKk1hookqTWGiiSpNYaKJKk1hookqTX/H1O/HTY/IqDcAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f669257b438>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "cluster_number = range(2,10)\n",
    "plt.scatter(cluster_number,errors)\n",
    "plt.xlabel('clusters')\n",
    "plt.ylabel('WSSE')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 262,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Selecting k =7 for kmeans clustering\n",
    "kmeans6 = KMeans(featuresCol='scaledFeatures',k=6)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 263,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Fitting the model on data\n",
    "model_k6 = kmeans6.fit(cluster_final_data)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 264,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "+----------+-----+\n",
      "|prediction|count|\n",
      "+----------+-----+\n",
      "|         1|    1|\n",
      "|         3|    1|\n",
      "|         5|    7|\n",
      "|         4|    8|\n",
      "|         2|    3|\n",
      "|         0|  783|\n",
      "+----------+-----+\n",
      "\n"
     ]
    }
   ],
   "source": [
    "#Number of customers in each of the clusters\n",
    "model_k6.transform(cluster_final_data).groupBy('prediction').count().show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 265,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "+----------------------+-----------------+---------+-----+---------------+-------------+-----------+--------------+----------------+-----------+-------+---------+----+-----------+------------+-------+-----+-------+----+------+----+-------+--------------------+--------------------+----------+\n",
      "|user_id_music category|Alternative Music|Asian Pop|Blues|Classical Music|Country Music|Dance Music|Easy Listening|Electronic Music|Hindi Music|Hip Hop|Indie Pop|Jazz|Latin Music|Motivational|New Age|Opera|Popular| Rap|Reggae|Rock|Soulful|            features|      scaledFeatures|prediction|\n",
      "+----------------------+-----------------+---------+-----+---------------+-------------+-----------+--------------+----------------+-----------+-------+---------+----+-----------+------------+-------+-----+-------+----+------+----+-------+--------------------+--------------------+----------+\n",
      "|  ca3c4285512798abe...|              878|        5|  137|            160|          110|        134|           127|              42|        151|    140|        8| 308|          0|           6|      0|   23|      0|  42|     0|   7|      0|[878.0,5.0,137.0,...|[0.23060734966208...|         0|\n",
      "|  b457919ae168ac12e...|             1003|        0| 1108|           2003|          292|        834|            94|             523|          1|    250|      102| 136|         22|          27|     23|   47|      8|  61|     0|   0|      1|[1003.0,0.0,1108....|[0.26343869215383...|         0|\n",
      "|  a87bb168ba6e5a8da...|                3|        0|  256|              5|           84|         24|             5|              55|         21|      1|       83|   0|          4|          21|      0|    2|     31|   0|     0|   8|     37|[3.0,0.0,256.0,5....|[7.87952219802098...|         0|\n",
      "|  cf60c9b1a0444261c...|             1583|     3665| 4865|            947|         1322|        662|          6845|            1132|         25|    436|       62| 169|          1|         241|     48|  792|     33|1047|    61|  69|      5|[1583.0,3665.0,48...|[0.41577612131557...|         0|\n",
      "|  8ab21c1b361d5c4aa...|              287|       92| 1052|            404|          493|       2911|           160|             136|          0|     86|      141|  10|          3|         218|    102|   40|     51| 101|     4|  23|      1|[287.0,92.0,1052....|[0.07538076236106...|         0|\n",
      "|  34e22754ffec4a0d4...|             2710|       25| 2273|            589|         1128|       1631|          2190|             562|          9|    515|     1054|   5|          4|          65|     12|   34|    210| 312|     5| 377|     80|[2710.0,25.0,2273...|[0.71178350522122...|         0|\n",
      "|  ad3ea6999df3120cc...|               40|        9|   26|              4|          105|       3382|           288|              64|          7|      3|       37|   0|          2|          18|      0|   51|      3|  31|     0|   0|      0|[40.0,9.0,26.0,4....|[0.01050602959736...|         0|\n",
      "|  3d2ea50eeeb98d4a7...|              384|       43|  270|            305|          253|        894|          1437|             108|         15|    401|      673| 168|          0|          73|     58|  126|      4| 189|     2|  19|     85|[384.0,43.0,270.0...|[0.10085788413466...|         0|\n",
      "|  334533d21eeed37dd...|               97|        0|  104|              1|           67|         41|            16|              22|         36|     57|       37|   0|          0|           0|      1|   32|     26|   2|     1|   0|      6|[97.0,0.0,104.0,1...|[0.02547712177360...|         0|\n",
      "|  bad9c123790cfd0b1...|              347|       42|  162|            254|          219|        469|           103|              44|        602|    392|       30|   0|          1|           0|   1604|   63|      5| 138|     0|   0|     17|[347.0,42.0,162.0...|[0.09113980675710...|         0|\n",
      "|  dd8b41323bbef6d40...|              290|        1|  201|             58|          206|         31|            19|             128|          8|     52|       11|  64|          0|           1|      1|   94|     24|  28|     0|   0|      2|[290.0,1.0,201.0,...|[0.07616871458086...|         0|\n",
      "|  ac40c16b3c6248ceb...|               17|        3|   23|            644|           45|        103|           124|             111|          1|     48|        1|   0|          0|         104|     14|  132|     84|   3|     0|   2|     14|[17.0,3.0,23.0,64...|[0.00446506257887...|         0|\n",
      "|  57c20a25da427c79b...|               33|        0|   29|             50|           18|         92|            16|             108|          0|    158|        6|   7|          0|           4|      2|    6|      0|  37|     2|  42|      2|[33.0,0.0,29.0,50...|[0.00866747441782...|         0|\n",
      "|  b5773ac4aa0d07926...|             1543|        1|  324|           1439|          344|        216|            27|             206|          8|     75|      114|  89|          1|           7|    246|   25|      0| 107|     0|   0|     39|[1543.0,1.0,324.0...|[0.40527009171821...|         0|\n",
      "|  793c0773daa478bf3...|                2|        0|   74|              0|           14|          6|             2|               2|          0|      0|        0|   0|          0|           0|      0|    0|      0|   0|     0|  16|      0|(21,[0,2,4,5,6,7,...|(21,[0,2,4,5,6,7,...|         0|\n",
      "|  4c52a409ecbf4c78b...|              540|        2|  901|            196|          101|        594|           148|              52|       4501|     11|       23|   0|          0|           3|    580|  162|     32|   6|     0|   0|      1|[540.0,2.0,901.0,...|[0.14183139956437...|         0|\n",
      "|  fadebf953475576be...|              929|       24| 1077|            228|          959|        146|           466|             720|          2|     40|      130| 107|          1|         253|      2|   21|     16|   7|     0|  52|     12|[929.0,24.0,1077....|[0.24400253739871...|         0|\n",
      "|  86f98ea95c8b3333b...|              751|      283| 3379|            949|         2696|        825|          1259|             932|          7|   1622|     1227|  34|         31|          75|    173|  571|     51|4303|    22|  11|     27|[751.0,283.0,3379...|[0.19725070569045...|         0|\n",
      "|  1a9da82f18b16577b...|             7075|       34| 5797|           1070|         6003|       3468|          3332|            1152|         44|    950|     1367|  74|         41|         656|    407|  485|    162|2534|    37| 279|    104|[7075.0,34.0,5797...|[1.85825398503328...|         0|\n",
      "|  9e528e07d7deddba5...|             2119|       14|  670|             97|          193|        429|           802|             223|          1|    168|      397|   1|          5|         836|      8|   83|     71| 120|     6|   0|      5|[2119.0,14.0,670....|[0.55655691792021...|         0|\n",
      "+----------------------+-----------------+---------+-----+---------------+-------------+-----------+--------------+----------------+-----------+-------+---------+----+-----------+------------+-------+-----+-------+----+------+----+-------+--------------------+--------------------+----------+\n",
      "only showing top 20 rows\n",
      "\n"
     ]
    }
   ],
   "source": [
    "model_k6.transform(cluster_final_data).show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 266,
   "metadata": {},
   "outputs": [],
   "source": [
    "cluser_prediction=model_k6.transform(cluster_final_data)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 208,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['user_id_music category',\n",
       " 'Alternative Music',\n",
       " 'Asian Pop',\n",
       " 'Blues',\n",
       " 'Classical Music',\n",
       " 'Country Music',\n",
       " 'Dance Music',\n",
       " 'Easy Listening',\n",
       " 'Electronic Music',\n",
       " 'Hindi Music',\n",
       " 'Hip Hop',\n",
       " 'Indie Pop',\n",
       " 'Jazz',\n",
       " 'Latin Music',\n",
       " 'Motivational',\n",
       " 'New Age',\n",
       " 'Opera',\n",
       " 'Popular',\n",
       " 'Rap',\n",
       " 'Reggae',\n",
       " 'Rock',\n",
       " 'Soulful',\n",
       " 'features',\n",
       " 'scaledFeatures',\n",
       " 'prediction']"
      ]
     },
     "execution_count": 208,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "cluser_prediction.columns"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 267,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "+----------------------------------------------------------------+---------------------------------------------------------------+----------+\n",
      "|user_id_music category                                          |pca_features                                                   |prediction|\n",
      "+----------------------------------------------------------------+---------------------------------------------------------------+----------+\n",
      "|ca3c4285512798abe7d81fa2d0588549211be9516d9b2050e5564f8e912312c7|[-0.2300557938814522,0.12236096340687881,-0.09819806352845252] |0         |\n",
      "|b457919ae168ac12ec7e0303ae0d5fe292b63c9d04eb54e039942e7f46552ec4|[-0.6087376000709741,0.1393766034435933,-0.08285687930970416]  |0         |\n",
      "|a87bb168ba6e5a8da5eccce18c95565d843b40c1833b0f6c3089eb083f0fe3d3|[-0.18984573757826703,0.18335321555713666,-0.04070920716381461]|0         |\n",
      "|cf60c9b1a0444261c3a4687677f5336686b96756df5e33c11f6016f16fb38372|[-3.5303846560716243,0.2409873719975444,1.5352890439878513]    |0         |\n",
      "|8ab21c1b361d5c4aa1ed01893305febf1c6659bd342217eece1225d789ba57da|[-0.6960980947562179,0.41539540556739135,0.1328825143325103]   |0         |\n",
      "|34e22754ffec4a0d434edfa0f3b10c0e1ab14c632cee37514076d211cf1e7017|[-2.257072907776157,0.8089949841080919,1.2387846022550741]     |0         |\n",
      "|ad3ea6999df3120ccb557d34cf75e17dfdd3febe445e9e1bc36514642fcd3bdb|[-0.3029424055899029,0.33805054945697277,0.008961187319110489] |0         |\n",
      "|3d2ea50eeeb98d4a79259ee057955696ec9dc46e1b72e8d8eff099feb3362e1f|[-0.9323219502113488,0.3736446206947567,-0.043118886660126865] |0         |\n",
      "|334533d21eeed37dd2b686022857f9f42eef9fa6192a8653040af844be8d15ef|[-0.11094580775076693,0.08015760196448801,-0.06321874934348005]|0         |\n",
      "|bad9c123790cfd0b1106190de5623afbb70de0e71f5d48dc05ee6d743a2f50a8|[-0.6351994079763649,0.793235732026063,-1.0160382517545277]    |0         |\n",
      "|dd8b41323bbef6d4093879c63966b025d9dd3dbdab1b372ec3c09ee9e40e277c|[-0.17132910926983444,0.1277668075777433,-0.0470209094114813]  |0         |\n",
      "|ac40c16b3c6248cebdfb8cb9e2dee4575862ef1223ece1b393b45b6b2561e8fc|[-0.2903272633206924,0.08141975525312077,-0.21732610354225085] |0         |\n",
      "|57c20a25da427c79b41690be1b895110bbae9fb583a32a2d27c310e9caa1a395|[-0.11975062913560969,0.009634403704897421,0.07015619316777143]|0         |\n",
      "|b5773ac4aa0d079266ecc3f02d0a16a0f7fd0789b7c0553782dd0588d57298b4|[-0.48174751228998336,0.271430459218724,-0.09194050266187365]  |0         |\n",
      "|793c0773daa478bf340a4c6f63fad3beedef69aaa0a8f503995450c8a75cd2bd|[-0.02753371619037461,0.020308569712319913,0.04797976095330012]|0         |\n",
      "|4c52a409ecbf4c78bf6aa73611615d7c68090162250aeed3118d57177e291e63|[-1.6901586196342482,2.21956008304968,-3.766016656348226]      |0         |\n",
      "|fadebf953475576be81797433f0d28278858f93eee0cefcc95b5b03dd787c327|[-0.7219377645248845,0.1765651096513876,0.3217666909296957]    |0         |\n",
      "|86f98ea95c8b3333b947bf9a1a305150633df37e6aac807cddcbbe3463bfd53d|[-2.6990422233861433,0.6459891019095801,0.43543576199822437]   |0         |\n",
      "|1a9da82f18b16577b872a71cefdeae63a7725eac5547820182ba82d8845b02ee|[-4.56703702182408,2.0873377994457507,1.8174975424357205]      |0         |\n",
      "|9e528e07d7deddba5dcafd78c60059c7a91a7233350b2dcad109ae3b413d6aaf|[-0.9464607241789978,0.05019279855469194,0.23245132933281556]  |0         |\n",
      "+----------------------------------------------------------------+---------------------------------------------------------------+----------+\n",
      "only showing top 20 rows\n",
      "\n"
     ]
    }
   ],
   "source": [
    "### PCA for visualization \n",
    "\n",
    "from pyspark.ml.feature import PCA\n",
    "from pyspark.ml.linalg import Vectors\n",
    "\n",
    "\n",
    "\n",
    "pca = PCA(k=3, inputCol=\"scaledFeatures\", outputCol=\"pca_features\")\n",
    "pca_model = pca.fit(cluser_prediction)\n",
    "\n",
    "result = pca_model.transform(cluser_prediction).select('user_id_music category',\"pca_features\",'prediction')\n",
    "result.show(truncate=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 268,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>pca_features</th>\n",
       "      <th>prediction</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>user_id_music category</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>ca3c4285512798abe7d81fa2d0588549211be9516d9b2050e5564f8e912312c7</th>\n",
       "      <td>[-0.230055793881, 0.122360963407, -0.098198063...</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>b457919ae168ac12ec7e0303ae0d5fe292b63c9d04eb54e039942e7f46552ec4</th>\n",
       "      <td>[-0.608737600071, 0.139376603444, -0.082856879...</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>a87bb168ba6e5a8da5eccce18c95565d843b40c1833b0f6c3089eb083f0fe3d3</th>\n",
       "      <td>[-0.189845737578, 0.183353215557, -0.040709207...</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>cf60c9b1a0444261c3a4687677f5336686b96756df5e33c11f6016f16fb38372</th>\n",
       "      <td>[-3.53038465607, 0.240987371998, 1.53528904399]</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8ab21c1b361d5c4aa1ed01893305febf1c6659bd342217eece1225d789ba57da</th>\n",
       "      <td>[-0.696098094756, 0.415395405567, 0.132882514333]</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                                                                                         pca_features  \\\n",
       "user_id_music category                                                                                  \n",
       "ca3c4285512798abe7d81fa2d0588549211be9516d9b205...  [-0.230055793881, 0.122360963407, -0.098198063...   \n",
       "b457919ae168ac12ec7e0303ae0d5fe292b63c9d04eb54e...  [-0.608737600071, 0.139376603444, -0.082856879...   \n",
       "a87bb168ba6e5a8da5eccce18c95565d843b40c1833b0f6...  [-0.189845737578, 0.183353215557, -0.040709207...   \n",
       "cf60c9b1a0444261c3a4687677f5336686b96756df5e33c...    [-3.53038465607, 0.240987371998, 1.53528904399]   \n",
       "8ab21c1b361d5c4aa1ed01893305febf1c6659bd342217e...  [-0.696098094756, 0.415395405567, 0.132882514333]   \n",
       "\n",
       "                                                    prediction  \n",
       "user_id_music category                                          \n",
       "ca3c4285512798abe7d81fa2d0588549211be9516d9b205...           0  \n",
       "b457919ae168ac12ec7e0303ae0d5fe292b63c9d04eb54e...           0  \n",
       "a87bb168ba6e5a8da5eccce18c95565d843b40c1833b0f6...           0  \n",
       "cf60c9b1a0444261c3a4687677f5336686b96756df5e33c...           0  \n",
       "8ab21c1b361d5c4aa1ed01893305febf1c6659bd342217e...           0  "
      ]
     },
     "execution_count": 268,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "clusters = result.toPandas().set_index('user_id_music category')\n",
    "clusters.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 269,
   "metadata": {},
   "outputs": [],
   "source": [
    "clusters[['x','y','z']]=pd.DataFrame(clusters.pca_features.values.tolist(), index= clusters.index)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 270,
   "metadata": {},
   "outputs": [],
   "source": [
    "del clusters['pca_features']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 271,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>prediction</th>\n",
       "      <th>x</th>\n",
       "      <th>y</th>\n",
       "      <th>z</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>user_id_music category</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>ca3c4285512798abe7d81fa2d0588549211be9516d9b2050e5564f8e912312c7</th>\n",
       "      <td>0</td>\n",
       "      <td>-0.230056</td>\n",
       "      <td>0.122361</td>\n",
       "      <td>-0.098198</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>b457919ae168ac12ec7e0303ae0d5fe292b63c9d04eb54e039942e7f46552ec4</th>\n",
       "      <td>0</td>\n",
       "      <td>-0.608738</td>\n",
       "      <td>0.139377</td>\n",
       "      <td>-0.082857</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>a87bb168ba6e5a8da5eccce18c95565d843b40c1833b0f6c3089eb083f0fe3d3</th>\n",
       "      <td>0</td>\n",
       "      <td>-0.189846</td>\n",
       "      <td>0.183353</td>\n",
       "      <td>-0.040709</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>cf60c9b1a0444261c3a4687677f5336686b96756df5e33c11f6016f16fb38372</th>\n",
       "      <td>0</td>\n",
       "      <td>-3.530385</td>\n",
       "      <td>0.240987</td>\n",
       "      <td>1.535289</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8ab21c1b361d5c4aa1ed01893305febf1c6659bd342217eece1225d789ba57da</th>\n",
       "      <td>0</td>\n",
       "      <td>-0.696098</td>\n",
       "      <td>0.415395</td>\n",
       "      <td>0.132883</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                                                    prediction         x  \\\n",
       "user_id_music category                                                     \n",
       "ca3c4285512798abe7d81fa2d0588549211be9516d9b205...           0 -0.230056   \n",
       "b457919ae168ac12ec7e0303ae0d5fe292b63c9d04eb54e...           0 -0.608738   \n",
       "a87bb168ba6e5a8da5eccce18c95565d843b40c1833b0f6...           0 -0.189846   \n",
       "cf60c9b1a0444261c3a4687677f5336686b96756df5e33c...           0 -3.530385   \n",
       "8ab21c1b361d5c4aa1ed01893305febf1c6659bd342217e...           0 -0.696098   \n",
       "\n",
       "                                                           y         z  \n",
       "user_id_music category                                                  \n",
       "ca3c4285512798abe7d81fa2d0588549211be9516d9b205...  0.122361 -0.098198  \n",
       "b457919ae168ac12ec7e0303ae0d5fe292b63c9d04eb54e...  0.139377 -0.082857  \n",
       "a87bb168ba6e5a8da5eccce18c95565d843b40c1833b0f6...  0.183353 -0.040709  \n",
       "cf60c9b1a0444261c3a4687677f5336686b96756df5e33c...  0.240987  1.535289  \n",
       "8ab21c1b361d5c4aa1ed01893305febf1c6659bd342217e...  0.415395  0.132883  "
      ]
     },
     "execution_count": 271,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "clusters.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 272,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f6691d91d30>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from mpl_toolkits.mplot3d import Axes3D\n",
    "threedee = plt.figure(figsize=(10,10)).gca(projection='3d')\n",
    "threedee.scatter(clusters.x, clusters.y, clusters.z, c=clusters.prediction)\n",
    "threedee.set_xlabel('x')\n",
    "threedee.set_ylabel('y')\n",
    "threedee.set_zlabel('z')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
